2.9 表格选择之loc切片法-列选择
列的选择方式分为单列、连续多列、不连续多列几种选择方式。
列选择的表示方式有两各种,一种列索引为自然号,格式只能是df.loc[:,列索引序号];
另一种列索引为标签,格式只能是df.loc[:,”列索引标签号”]。
多列自然号
import pandas as pd
path = r "D:\Pyobject2023\object\测试\表格之切法.xlsx"
df = pd.read_excel(path)
df.columns=[ 0,1,2,3,4,5 ]
t=df.loc[:,[ 1,2,4 ]]
print (t)
返回:
1 | 2 | 4 | |
---|---|---|---|
0 | 小王 | 男 | 87 |
1 | 小曾 | 女 | 55 |
2 | 小李 | 男 | 34 |
3 | 小张 | 女 | 67 |
4 | 小林 | 男 | 78 |
多列标签
import pandas as pd
path = r "D:\Pyobject2023\object\测试\表格之切法.xlsx"
df = pd.read_excel(path)
t=df.loc[:, "姓名":"1月" ]
print (t)
返回:
姓名 | 姓别 | 1月 | |
---|---|---|---|
0 | 小王 | 男 | 87 |
1 | 小曾 | 女 | 55 |
2 | 小李 | 男 | 34 |
3 | 小张 | 女 | 67 |
4 | 小林 | 男 | 78 |
import pandas as pd
path = r "D:\Pyobject2023\object\测试\表格之切法.xlsx"
df = pd.read_excel(path)
t=df.loc[:, "姓名" :]
print (t)
返回:
姓名 | 姓别 | 1月 | 2月 | 3月 | |
---|---|---|---|---|---|
0 | 小王 | 男 | 87 | 79 | 37 |
1 | 小曾 | 女 | 55 | 27 | 48 |
2 | 小李 | 男 | 34 | 47 | 85 |
3 | 小张 | 女 | 67 | 85 | 59 |
4 | 小林 | 男 | 78 | 49 | 76 |
列标签连续
import pandas as pd
path = r "D:\Pyobject2023\object\测试\表格之切法.xlsx"
df = pd.read_excel(path)
t=df.loc[df[ "1月" ]>60, "姓名" : "1月" ]
print (t)
返回:
姓名 | 姓别 | 1月 | |
---|---|---|---|
0 | 小王 | 男 | 87 |
3 | 小张 | 女 | 67 |
4 | 小林 | 男 | 78 |
按条件筛选
import pandas as pd
path = r "D:\Pyobject2023\object\测试\表格之切法.xlsx"
df = pd.read_excel(path)
t=df.loc[df[ "姓别" ]== "男","姓名":"1月" ]
print (t)
返回:
姓名 | 姓别 | 1月 | |
---|---|---|---|
0 | 小王 | 男 | 87 |
2 | 小李 | 男 | 34 |
4 | 小林 | 男 | 78 |
以数列形式指定行索引
import pandas as pd
path = r "D:\Pyobject2023\object\测试\表格之切法.xlsx"
df = pd.read_excel(path)
t=df.loc[[ 2,1,4 ],[ "姓名","1月" ]]
print (t)
返回:
姓名 | 1月 | |
---|---|---|
2 | 小李 | 34 |
1 | 小曾 | 55 |
4 | 小林 | 78 |